using System.Collections.Generic;
using System;

using MvcCms.Data;

namespace MvcCmsWiki.Data
{
    public interface IWikiRepository
    {
        void EditWikiSettings(WikiSetting wikiSettingToEdit);
        void CreateWikiSettings(WikiSetting wikiSettingToCreate);

        WikiSetting GetSettings(int portalId);
        WikiContent Get(string slug, int portalId);
        WikiTitle GetTitle(int titleId);
        WikiContent GetByVersion(string slug, int version, int portalId);
        IEnumerable<WikiContent> GetHistory(string slug, int portalId);
        IEnumerable<WikiContent> GetHistory(Guid userId);
        void Save(string slug, string title, string source, Portal portal, User user, string restrictedToGroups);
    }
}